" ==== nvim 其他设置 ====
" 
" Author: Asura/Lover_HZ
" Data: 2020/10/06
" Version: 1.0
"
" =======================

" 加载配置文件
if(has("win32") || has("win64") || has("win95") || has("win16"))
	source ~\AppData\Local\nvim\plugs.vim			" 加载插件配置文件
	source ~\AppData\Local\nvim\keymap.vim 			" 加载快捷键配置文件
	source ~\AppData\Local\nvim\coc_conf.vim		" 加载 coc 配置文件
	source ~\AppData\Local\nvim\lightline_conf.vim	" 加载 lightline 配置文件
else
	source $HOME/.config/nvim/plugs.vim 
	source $HOME/.config/nvim/keymap.vim 
	source $HOME/.config/nvim/coc_conf.vim
	source $HOME/.config/nvim/lightline_conf.vim
endif


" ==== 行号相关设置 ====
set number			" 显示行号
set relativenumber	" 开始实时行号

" ==== tab相关设置 ====
set autoindent		" 下一行自动缩进
set tabstop=4		" tab长度
set shiftwidth=4	" 使用 >>, << 缩进时的长度
set softtabstop=4	" 设置tab转换成空格时的空格个数
set noexpandtab		" 缩进不一致时自动将tab转为空格

" ==== 主题与配色 ====
set background=dark	" 设置背景颜色[dark, light]
colorscheme gruvbox	" 设置配色

" ==== 设置语法高亮 ====
syntax on

" ==== 当前行高亮 ====
set cursorline

" ==== 自动折行设置 ====
set textwidth=80    " 设置每行的最大字符数
set wrap            " 超过字符将自动折行
set linebreak       " 避免一个单词被拆开
set wrapmargin=2    " 指定折行时右边留白距离

" ==== 设置移动时光标不触底 ====
set scrolloff=5     " 设置上下移动光标时，光标距离边界的距离(行)

" 启用鼠标
set mouse=a

" 设置编码
set encoding=utf-8

" 开启文件类型检查
filetype indent on

" 开启256色
set t_Co=256

" 关闭 vim 自带的模式显示
set noshowmode

" 自动隐藏buffer
set hidden

" 显示 tabline
set showtabline=2

" 设置 GUI 字体
set guifont=FiraCode\ NF:h16

" 开启粘贴
" set paste

" 设置一键运行
noremap r :call ComileRun()<CR>

" 运行脚本
func! ComileRun()
	exe "w"
	if &filetype == 'python'
		set splitbelow
		:sp
		:term python %
	elseif &filetype == 'go'
		set splitbelow
		:sp
		:term go %
	endif
endfunc

















